﻿using Microsoft.Win32;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MetaView.Ticket.Tools.Helper;

public static class SystemHelper
{
    /// <summary> 
    /// 获取系统主题模式的方法 
    /// </summary> 
    /// <returns>返回系统主题模式（Light 或 Dark）</returns> 
    public static string GetSystemTheme()
    {
        try
        {
            // 打开注册表中的指定键 
            using (RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Themes\Personalize"))
            {
                if (key != null)
                {
                    // 获取 AppsUseLightTheme 值 
                    object value = key.GetValue("AppsUseLightTheme");
                    if (value != null)
                    {
                        // 如果值为 1，表示浅色模式 
                        if ((int)value == 1)
                        {
                            return "Light";
                        }
                        // 否则为深色模式 
                        else
                        {
                            return "Dark";
                        }
                    }
                }
            }
        }
        catch (Exception ex)
        {
            // 处理异常，这里简单输出异常信息 
            //MessageBox.Show($"获取系统主题时出错: {ex.Message}");
        }
        // 默认返回 Light 
        return "Light";
    }
}
